package com.xltt.bluetoothlib.ble.utils;

public class Command {
    /**
     * 3.1	设置系统信息(主指令0xA0)
     * 手机->设备，手机使用写操作UUID1访问，设备端收到信息作出对应回应基于通知事件UUID2完成。
     *
     */
    public static final byte setting_system_info = (byte) 0xA0;
    public static final byte setting_system_info_frequency_setting = 0x01;//频率设置
    public static final byte setting_system_info_key_setting = 0x02;//按键设置
    public static final byte setting_system_info_sound_setting = 0x03;//声音设置
    public static final byte setting_system_info_power_setting = 0x04;//发射功率设置
    public static final byte setting_system_info_screen_brightness_time_setting = 0x05;//对讲屏幕亮度时间设置
    public static final byte setting_system_info_intercom_working_mode_setting = 0x06;//对讲工作模式设置
    /**
     * 3.2	读设备信息(主指令0xA1)
     * 手机->设备，手机使用读操作UUID3访问，设备端收到信息作出对应回应基于通知事件UUID2完成。
     */
    public static final byte read_device_info = (byte) 0xA1;
    public static final byte read_device_static_info = 0x01;//获取设备静态基本信息
    public static final byte read_device_trends_info = 0x02;//获取设备动态信息
    public static final byte read_device_gps_info = 0x03;//获取设备位置信息
    public static final byte read_device_key_function_info = 0x04;//获取按键功能
    public static final byte read_ppt_screen_time_info = 0x05;//获取对讲屏幕亮度时间
    public static final byte read_ppt_type_info = 0x06;//获取对讲类型
    /**
     * 3.3 OTA升级/音频数据(主指令0xA3/A4)
     * 手机->设备，手机使用写操作UUID1访问，设备端收到信息作出对应回应，基于通知事件UUID2完成。
     *
     */
    public static final byte ota = (byte) 0xA3;
    public static final byte ota_request_upgrade = 0x01;//请求升级/音频数据传输开始
    public static final byte ota_request_upgrade_send = 0x02;//升级/音频数据传输
    public static final byte ota_request_upgrade_end = 0x03;//升级/音频数据传输结束

    /**
     * 3.4	音频数据下发(主指令A4)
     * 手机->设备，手机使用写操作UUID1访问，设备端收到信息作出对应回应，基于通知事件UUID3完成。
     * 说明：音频采用opus的编解码方式，通过蓝牙BLE进行传输。设备采集声音转为Opus格式，
     * Opus音频文件符合采样率16000，单声道（为减少传输数据量），同时opus文件需ogg格式进行封装，具体格式文件示例见附件说明。
     * 注意：针对模拟对讲图片的发送，也可应用此节协议进行SSTV 图片传输。
     */
    public static final byte audio_data_revice = (byte) 0xA4;
    public static final byte audio_data_revice_start = 0x01;//请求设备音频数据传输开始
    public static final byte audio_data_revice_ing = 0x02;//音频数据传输进行中
    public static final byte audio_data_revice_end = 0x03;//音频数据传输结束

    /**
     * 3.5 音频数据上送(主指令0xA5)
     * 设备->手机，设备使用UUID2访问，仅通知指令，无需手机端回复
     */
    public static final byte audio_data_send = (byte) 0xA5;//采集音频数据

    /**
     * 3.6	设备信息变更通知(主指令0xA6)
     * 设备->手机，设备采用UUID2通知手机端。
     */
    public static final byte device_info_notify = (byte) 0xA6;
    public static final byte device_info_notify_frequency_update = 0x01;//频率变更
    public static final byte device_info_notify_sound_update = 0x02;//声音音量变更
    public static final byte device_info_notify_transmit_power_update = 0x03;//发射功率设置
    public static final byte device_info_notify_ppt_screen_value_update = 0x04;//对讲屏幕亮度变更
    public static final byte device_info_notify_ppt_gsp_update = 0x05;//位置信息变更

    /**
     * 3.7	APRS信息上送(主指令0xA7)（仅针对支持APRS设备）
     * 设备->手机，设备采用UUID3通知手机端，无需回复。
     * 说明：模拟的对讲采用APRS协议格式进行数据的传输，
     * 只针对模拟对讲，并满足APRS协议的设备，可利用此条指令进行位置信息上报，
     * 手机端APP需支持APRS数据协议的解析。
     */
    public static final byte aprs_info = (byte) 0xA7;

    /**
     * 3.8	位置信息上送(主指令0xA8)
     * 设备->手机，设备接收到本设备外的其他设备位置信息，蓝牙采用UUID3通知手机端，无需回复
     */
    public static final byte gps_info_send = (byte) 0xA8;

    /**
     * 3.9	文本信息下发(主指令0xA9)
     * 手机->设备，APP上编辑需要发送的文本信息进行设备下发，采用UUID1
     * 手机->设备
     */
    public static final byte text_info_revice = (byte) 0xA9;

    /**
     * 3.10	文本信息上送(主指令0xAA)
     * 设备->手机，APP上编辑需要发送的文本信息进行设备下发，蓝牙采用UUID3对数据进行上送
     * 设备->手机
     */
    public static final byte text_info_send = (byte) 0xAA;

    /**
     * 3.11	APP图片传输(主指令0xAB)
     * 手机->设备，手机使用写操作UUID1访问，设备端收到信息作出对应回应，基于通知事件UUID3完
     */
    public static final byte img_info_revice = (byte) 0xAB;
    public static final byte img_info_revice_start = 0x01;//APP请求图片传输开始
    public static final byte img_info_revice_ing = 0x02;//APP请求图片传输进行中
    public static final byte img_info_revice_end = 0x03;//APP请求图片传输结束
    /**
     * 3.12	3.12
     * 设备接收图片上传(主指令0xAC)
     * 设备->手机，使用通知事件UUID3完成数据发送，UUID1做数据接收回送。
     *
     */
    public static final byte img_info_send = (byte) 0xAC;
    public static final byte img_info_send_start = 0x01;//APP请求图片传输开始
    public static final byte img_info_send_ing = 0x02;//APP请求图片传输进行中
    public static final byte img_info_send_end = 0x03;//APP请求图片传输结束
}
